SQL FULL OUTER JOIN

کلمه کلیدی FULL OUTER OUTER JOIN همه رکوردها را زمانی که در رکوردهای جدول چپ (جدول 1) یا راست (جدول 2) مطابقت داشته باشد، برمی گرداند.

نکته: FULL OUTER JOIN و FULL JOIN یکسان هستند

SQL FULL OUTER JOIN

در این آموزش از پایگاه داده نمونه معروف Northwind استفاده خواهیم کرد.

در زیر منتخبی از جدول "مشتریان" آمده است:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1

 
Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico

و یک انتخاب از جدول "سفارش ها":

OrderIDCustomerIDEmployeeIDOrderDateShipperID
10308271996-09-183
103093731996-09-191
103107781996-09-202

عبارت SQL زیر همه مشتریان و همه سفارش‌ها را انتخاب می‌کند:

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;

انتخابی از مجموعه نتایج ممکن است به شکل زیر باشد:

CustomerNameOrderID
Null10309
Null10310
Alfreds FutterkisteNull
Ana Trujillo Emparedados y helados10308
Antonio Moreno TaqueríaNull